Debugging an application includes eliminating unexpected behavior exhibited by the application. An application developer can connect a device running the application to a workstation that includes a debugger. The developer can then use the debugger to communicate debugging commands to the application over the connection. For example, the debugger can stop the application and display the application's source code at a particular moment the application stopped in order to identify and eliminate unexpected behavior.